.TH FL_leave 3 "Dec 2000" "Flush Spread" "User Manuals"
.SH NAME
FL_leave \- remove a connection from a Flush Spread group
.SH SYNOPSIS
.B #include <fl.h>

.BI "int FL_leave(mailbox " mbox ", const char *" group_name ");"
.SH DESCRIPTION
.B FL_leave
removes the connection represented by
.I mbox
from a Flush Spread group with the name
.IR group_name .
A connection may only leave a group after it has been installed as a
member of the group by being included in a Flush Spread
view/membership.  Also a connection may not leave a group if it has
already requested to leave that group and the self-leave message has
not yet been received.
.SH "RETURN VALUES"
Returns 0 on success or one of the following errors ( < 0 ):
.TP
.B ILLEGAL_GROUP
The 
.I group_name
given to leave was illegal for some reason. Usually because it was of
length 0 or length > MAX_GROUP_NAME.  This error is also returned if
the connection was not a full-fledged member (i.e. - not yet included
in a Flush membership message for that group, or already leaving) of
the group.
.TP
.B ILLEGAL_SESSION
The connection represented by 
.I mbox
is illegal. Usually because it is not active.
.TP
.B CONNECTION_CLOSED
Errors occurred during communication
and the leave could not be initiated.
.SH AUTHOR
John Schultz <jschultz@cnds.jhu.edu>
